package com.graduate.service;



import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.service.IService;

import com.graduate.model.SysUser;
import com.graduate.util.PageInfo;

public interface ISysUserService extends IService<SysUser>{
	/**
	 * @description 分页查询用户信息
	 * @param pageInfo
	 * @return
	 */
	public PageInfo getPageInfo(PageInfo pageInfo);
	/**
	 * @description 新增用户信息
	 * @param user
	 */
	public Integer saveUser(SysUser user);
	/**
	 * @description 修改用户信息
	 * @param user
	 * @return
	 */
	public Integer updateUser(SysUser user);
	/**
	 * @description 批量删除用户信息（逻辑删除，将作废标志改为1作废）
	 * @param user
	 * @return
	 */
	public Integer deleteUser(SysUser user);
	/**
	 * @description 查询用户编码是否已存在
	 * @param user
	 * @return
	 */
	SysUser selectOne(SysUser user);
	/**
	 * @description 根据用户主键获取用户信息（用于更新用户信息时设置默认值）
	 * @param map
	 * @return
	 */
	Map<String, Object> getUserInfoById(Map<String, Object> map);
	/**
	 * @description 批量修改用户的所属机构代码和机构名称
	 * @param user
	 * @return
	 */
	Integer updateBatchUserWithOrg(SysUser user);
	/**
	 * 根据用户code查找授权中心
	 * @param userCode
	 * @return
	 */
	//List<UserAndGrantCenter> getUserGrantCenters(String userCode);
	
	public PageInfo getPageInfoForSelector(PageInfo pageInfo);
	SysUser selectUser(SysUser user);
	
	/**
	 * 查询某一个机构的用户
	 * @param orgCode
	 * @return
	 */
	List<SysUser> getUserByOrgCode(String orgCode,String roleCode);
}
